home *** CD-ROM | disk | FTP | other *** search
-
- D48 8048/8041 Disassembler - Copyright 1990 by Jeffery L. Post
-
- D48 is a cross disassembler for MSDOS machines. It generates an 8048
- assembly source code file from either a binary file or an Intel hex file.
- The executable code for D48 is public domain. The C source code for this
- program is NOT public domain but may be purchased from the author for
- personal or educational use only. To obtain the C source on a standard
- 360K MSDOS 5 1/4" diskette, send $10 cash, check, or money order to:
-
- Jeffery L. Post
- 22726 Benner Ave.
- Torrance, CA 90505
-
- The executable program may be freely distributed through public domain
- channels (bulletin boards, PD software houses, friends, etc) provided
- this documentation file is included.
-
- Command line format is: d48 filename [options]. The filename should
- be entered without an extension. The default extension is HEX. If the 'b'
- (binary file) option is used, the default extension is BIN. The 'd' (data)
- option will append a comment field to each assembly line consisting of the
- address of the instruction and hex and ascii representations of the code
- byte(s). Option entry is freeform: 'db' 'd b' '-bd' '-b -d' all mean the
- same thing.
-
- D48 does two passes over the code being disassembled. The first pass
- searches for opcodes that reference program locations (such as jumps and
- calls) so that labels may be generated in the source listing. Pass two does
- the actual disassembly and writes source lines to the output file. Pass three
- then searches for references to locations outside of the initialized program
- space or to locations that lie in the middle of opcodes and generates equate
- statements for them.
-
- D48 is an 'intelligent' disassembler. Since uninitialized space in a
- program will normally be filled with either 0 or 0ffh, blocks of such data
- will not be disassembled as page after page of NOP or MOV A,R7. They will
- be skipped over and an ORG statement will be inserted in the assembly output
- when the next initialized code is encountered.
-
- Despite all it's wonderfulness, D48 does have some drawbacks. Chief among
- them is that it does not try to analyze program flow, and therefore cannot
- tell the difference between valid executable code, data tables, and/or ascii
- data. This can lead to some strange looking disassembly when ascii data or
- address tables are encountered. The 'd' option is useful for identifying such
- problems.
-
- Comments, suggestions, bug reports, praise, or diatribes of any kind may
- be sent to the author at the address given above.
-
-